package fun.cyhgraph.mapper;

import fun.cyhgraph.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.Map;


/**
 * 用户Mapper
 */
@Mapper
public interface UserMapper {

    /**
     * 根据openid查询用户
     * @param openid
     * @return
     */
    @Select("select * from user where openid = #{openid}")
    User getByOpenid(String openid);

    /**
     * 插入用户
     * @param user
     */
    void insert(User user);

    /**
     * 根据id查询用户      也用于(用户支付订单)
     * @param id
     * @return
     */
    @Select("select * from user where id = #{id}")
    User getById(Integer id);

    /**
     * 更新用户     (用户端)
     * @param user
     */
    void update(User user);


    /**
     * 根据动态条件统计新增用户数    (工作台数据统计所需) (图表-用户统计)
     * （动态sql）
     * @param map
     * @return
     */
    Integer countByMap(Map map);
}
